namespace SIG.Model.Store
{
    using Core;
    using Newtonsoft.Json;
    using Resources;
    using Resources.Admin;
    using System.Collections.Generic;
    using System.ComponentModel.DataAnnotations;
    using System.ComponentModel.DataAnnotations.Schema;


    public partial class Goods : AuditableEntity<int>
    {      
        public Goods()
        {
            this.EntityName = EntityNames.Goods;
            //this.GoodsSpecialPropertyValues = new HashSet<GoodsSpecialPropertyValue>();
            this.GoodsPhotos = new HashSet<GoodsPhoto>();        
        }

        //[ForeignKey("GoodsCategory")]
        public int CategoryId { get; set; }
        public string Name { get; set; }
        public decimal Price { get; set; }
        public string Description { get; set; }
        public string FullDescription { get; set; }
        public string Thumbnail { get; set; }
        public int ViewCount { get; set; }
        public bool Active { get; set; }

        [JsonIgnore]
        public virtual GoodsCategory GoodsCategory { get; set; }
        //public virtual ICollection<GoodsSpecialPropertyValue> GoodsSpecialPropertyValues { get; set; }  
        [JsonIgnore]
        public virtual ICollection<GoodsPhoto> GoodsPhotos { get; set; }
        [JsonIgnore]
        public ICollection<OrderDetail> OrderDetails { get; set; }
        [JsonIgnore]
        public ICollection<Cart> Carts { get; set; }
    }
}
